home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MACD 5
/
MACD 5.bin
/
workbench
/
dir
/
dum2
/
src
/
duwindow.def
< prev
next >
Wrap
Text File
|
1987-05-28
|
3KB
|
107 lines
DEFINITION MODULE DuWindow;
(*
PART OF DirUtil for Modula 2
This creates, opens and maintains the DirUtil window.
It contains a couple of other importable routines for
user alteration.
Written: 3/21/87 by Greg Browne
Compiles on TDI's Modula-2 Compiler version 2.20a
NOTES: I kept being bugged with RefreshWindow not being exported from
Intuition as a flag. Then I found that it is either misspelled
in the .def module (as ResfreshWindow) or that it is supposed
to mean ResetFreshWindow. Don't know whats up but it works now.
*)
FROM Intuition IMPORT ActivationFlags,ActivationFlagSet,Gadget,
PropFlags,PropFlagSet,IntuitionText,
RequesterPtr,WindowPtr,StringInfo;
FROM GraphicsLibrary IMPORT DrawingModes,DrawingModeSet;
(*--------------------------------------------------------------------*)
(* ALMOST ALL CONSTANTS AND MOST VARIABLES/TYPES DEFINED IN .DEF FILE
FOR IMPORTATION
*)
CONST
StringBufSize = 255;
RegFlags = ActivationFlagSet{RelVerify,GadgetImmediate};
StringFlags = ActivationFlagSet{StringCenter} + RegFlags;
JamTwo = DrawingModeSet{Jam2};
SliderFlags = PropFlagSet{FreeVert,AutoKnob};
TYPE
WBColors = (Blue,White,Black,Green); (* My workbench colors *)
(*
Gadgets are addressed as a set. First are the devices, then the message
string gadgets, then the command gadgets, and finally the slider. Note
that this is larger than a BITSET already, so the 'GadgetID' is passed as
a set name and converted as CARDINAL(ORD(whatever)). Expansion of the set
should be easy, with only screen positioning being the hard part.
*)
GadgetNames = (df0,df1,df2,dh0,dh1,ram,vd0,
run,source,dest,msg,
filewindow,
arc,bytes,clear,copy,copydel,deldir,edit,execfr,execrf,
hprint,htype,info,makedir,move,parent,print,rename,
root,runfr,runrf,select,show,type,zapfile,
dtor,dtos,rtod,rtos,stod,stor,swapsd,swaprd,swaprs,
slider);
(* EXTERNAL AVAILABLE VARIABLES *)
VAR
IOStringInfo : ARRAY[run..filewindow] OF StringInfo;
NullReqPtr : RequesterPtr; (* initialized to be NULL always *)
DuWindowPtr : WindowPtr;
IOString : ARRAY[run..filewindow] OF ARRAY[0..StringBufSize-1] OF CHAR;
GadTxt : ARRAY GadgetNames OF IntuitionText;
DuGads : ARRAY GadgetNames OF Gadget;
(* ---------------------------*)
(* EXTERNAL PROCEDURES *)
(* ---------------------------*)
PROCEDURE SlidePot():CARDINAL;
(*
Function returns the current value of the VertPot of the slider
*)
PROCEDURE ResetSlider(bod:CARDINAL);
(*
Resets slide gadget size to the size passed in
*)
PROCEDURE CloseDuWindow;
(*
Closes the window and intuition and graphics bases if they are open
*)
PROCEDURE OpenDuWindow(VAR name:ARRAY OF CHAR):BOOLEAN;
(*
The external primary procedure - sets up and opens the window
or returns FALSE. The window may be accessed through
the import of DuWindowPtr
*)
END DuWindow.